import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import path from 'path'
import { ElMessage } from 'element-plus'

// https://vitejs.dev/config/
export default defineConfig({
  plugins: [vue()],
  resolve: {
    alias: {
      '@': path.resolve(__dirname, 'src')
    }
  },
  server: {
    proxy: {
      '/api': {
        target: 'http://localhost:8080',
        changeOrigin: true
      }
    }
  }
})

// 共通错误处理函数
const handleApiError = (error, defaultMessage = '操作失败') => {
  console.error('API错误:', error);
  
  // 根据状态码和消息类型提供友好提示
  if (error.message && error.message.includes('只能取消待处理的申请')) {
    ElMessage.warning('无法取消：该申请已不处于待处理状态');
  } else if (error.message && error.message.includes('任务状态')) {
    ElMessage.warning(`操作失败：${error.message}`);
  } else {
    ElMessage.error(defaultMessage);
  }
}
